package com.example.agriculture.service.impl;

import com.example.agriculture.dao.UserInforDao;
import com.example.agriculture.entity.UserInfor;
import com.example.agriculture.service.UserInforService;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

/**
 * (UserInfor)表服务实现类
 *
 * @author makejava
 * @since 2022-09-12 22:14:37
 */
@Service("userInforService")
public class UserInforServiceImpl implements UserInforService {
    @Resource
    private UserInforDao userInforDao;

    @Override
    public List<UserInfor> queryAllLimit(int offset, int limit, String keyword) {
        return userInforDao.queryAllLimit(offset,limit,keyword);
    }

    @Override
    public int userin(UserInfor userInfor) {
        return userInforDao.insert(userInfor);
    }

    @Override
    public UserInfor query(String name, String pwd) {
        return userInforDao.query(name, pwd);
    }

    @Override
    public UserInfor query1(String userNumber) {
        return userInforDao.query1(userNumber);
    }

    /**
     * 通过ID查询单条数据
     *
     * @param userId 主键
     * @return 实例对象
     */
    @Override
    public UserInfor queryById(Integer userId) {
        return this.userInforDao.queryById(userId);
    }

    @Override
    public int upUserMoney(Integer userId, Float userMoney) {
        return userInforDao.upUserMoney(userId,userMoney);
    }

    /**
     * 查询多条数据
     *
     * @param offset 查询起始位置
     * @param limit  查询条数
     * @return 对象列表
     */
    @Override
    public List<UserInfor> queryAllByLimit(int offset, int limit) {
        return this.userInforDao.queryAllByLimit(offset, limit);
    }

    /**
     * 新增数据
     *
     * @param userInfor 实例对象
     * @return 实例对象
     */
    @Override
    public UserInfor insert(UserInfor userInfor) {
        this.userInforDao.insert(userInfor);
        return userInfor;
    }

    /**
     * 修改数据
     *
     * @param userInfor 实例对象
     * @return 实例对象
     */
    @Override
    public UserInfor update(UserInfor userInfor) {
        this.userInforDao.update(userInfor);
        return this.queryById(userInfor.getUserId());
    }

    /**
     * 通过主键删除数据
     *
     * @param userId 主键
     * @return 是否成功
     */
    @Override
    public boolean deleteById(Integer userId) {
        return this.userInforDao.deleteById(userId) > 0;
    }

    @Override
    public int count() {
        return userInforDao.count();
    }

    @Override
    public int countLimit(String keyword) {
        return userInforDao.countLimit(keyword);
    }

    @Override
    public UserInfor updateUsermoney(float changeMoney) {
        return userInforDao.updateUsermoney(changeMoney);
    }

    @Override
    public int selectByUserId(String userNumber) {
        return userInforDao.selectByUserId(userNumber);
    }

    @Override
    public int updatePassword(String userNumber, String password) {
        return userInforDao.updatePassword(userNumber,password);
    }

    @Override
    public int queryAllCount(String userNumber) {
        return userInforDao.queryAllCount(userNumber);
    }


}